home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1994 #2 / Monster Media No. 2 (Monster Media)(1994).ISO / prog_c / ems4c.zip / EMS_STAT.C < prev    next >
Text File  |  1993-07-24  |  1KB  |  48 lines

  1. /* EMS_STAT */
  2.  
  3. #include <stdio.h>
  4. #include "ems4c.h"
  5.  
  6. void main()
  7. {int ErrorNumber;
  8.  int Version;
  9.  int FreePages;
  10.  int TotalPages;
  11.  int Frame;
  12.  int Active;
  13.  /* logon */
  14.  printf("\n***\n*** EMS Status: Version 1.0 \n***\n");
  15.  /* is EMM driver loaded ? */
  16.  ErrorCheck( emsLoaded() );
  17.  /* get EMM manager status */
  18.  ErrorCheck( emsGetStatus() );
  19.  /* get EMM version */
  20.  ErrorCheck( emsVersion(&Version) );
  21.  printf("***     EMM Version = %x.%x\n",Version/16,0x0f&Version);
  22.  if((Version!=0x32)&&(Version!=0x40))
  23.    {printf("Requires EMS version 3.2 or 4.0\n");
  24.     exit(1);
  25.    }
  26.  /* get total number of EMS pages */
  27.  ErrorCheck( emsGetPages(&FreePages,&TotalPages) );
  28.  printf("***  Free EMS Pages = %d (%xH)\n",FreePages,FreePages);
  29.  printf("*** Total EMS Pages = %d (%dH)\n",TotalPages,TotalPages);
  30.  /* get EMS frame address */
  31.  ErrorCheck( emsGetFrame(&Frame) );
  32.  printf("***   Frame Address = %x:0\n",Frame);
  33.  /* get number of active EMS handles */
  34.  ErrorCheck( emsGetHandles(&Active) );
  35.  printf("***  Active Handles = %d\n",Active);
  36.  printf("***    Free handles = %d\n",255-Active);
  37.  printf("***\n");
  38. }
  39.  
  40. int ErrorCheck(ErrorNumber)
  41. int ErrorNumber;
  42. {if(ErrorNumber)
  43.    {emsError(ErrorNumber);
  44.     exit(1);
  45.    }
  46.  return(ErrorNumber);
  47. } /* end ErrorCheck */
  48.